<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Processos extends CI_Controller {

	function __construct() {
		parent::__construct();
		if(!$this->session->userdata('disproju')){
			$this->session->sess_destroy();
			redirect('login', 'refresh');
		}
	}

	public function index(){
		redirect('processos/consulta');
	}
	
	public function novo(){
	
		//******************************************************
		//   PERMISSAO 
		//******************************************************
		$session_data = $this->session->userdata('disproju');
		temPermissao(array('1','2'),$session_data);
		
		$tipo = new Tipoprocesso();
		$tipo = $tipo->get();
		
		$tipopermissao = array();
		foreach($tipo as $a){
			$tipopermissao[$a->id ] = $a->nomeprocesso;
		}
		$data['tipoprocesso'] = $tipopermissao;
		
		$tipo = new Assunto();
		$tipo = $tipo->get();
		
		$assunto = array();
		foreach($tipo as $a){
			$assunto[$a->id ] = $a->descricao;
		}
		$data['assunto'] = $assunto;
		
		
		$this->load->view('header.php');
		$this->load->view('v_processo',$data);
	}
	public function salvar(){
		
		//******************************************************
		//   PERMISSAO 
		//******************************************************
		$permissao = array('1','2');
		$session_data = $this->session->userdata('disproju');
		if (!in_array($session_data["permissao"], $permissao)){ 
			redirect('inicio/sorry');

		}else{
			if($this->input->post()){
		
				$advogado = "";
				$retorno_nome_adv =  "";
				$retorno_nome_adv_red =  "";
				$processo = new Processo();
				$usuario = new Usuario();
				
				if($this->input->post("numero_processo_parce")){
					$cprocesso = new Processo();
					$cprocesso->where("numeroprocesso",$this->input->post("numero_processo_parce"))->get();
					$advogado = $cprocesso->usuario_id;
				}else{
        
					$adv = new Processo();
					//sorteia advogado
					$advogado = $adv->sorteioUsuario($this->input->post('tipo_processo'),$this->input->post('excecao'));
					if(empty($advogado)){
						echo '<div class="danger alert-danger" role="danger">Nenhum advogado atende o local selecionado!!</div>';
						exit();
					}
									
				}
				
				$processo->dt_processo = brToUsa($this->input->post('dia'));
				$processo->tipoprocesso_id = $this->input->post('tipo_processo');
				$processo->numeroprocesso = strtoupper($this->input->post('numero_processo'));
				$processo->cd_bic = $this->input->post('cod_bic');
				$processo->observacao = strtoupper($this->input->post('observacao'));
				$processo->assunto_id = $this->input->post('assunto');
				$processo->usuario_id = $advogado;
				
				
				$usuario->id = $advogado;
				
				//MENSAGEM DE RETORNO
				$rusuario = new Usuario();
				$rusuario->where("id",$advogado)->get();
				$retorno_nome_adv = $rusuario->nome_completo;
                
                
                //---------------------------------------------------------------------
                //   VERIFICAR SE ADVOGADO ESTA AUSENTE
                //---------------------------------------------------------------------
                $ausente = new Ausente();
                //verifica se usuario sorteado esta ausente
                $ausente->usuarioAusente($advogado);
                $foiredistribuido = false;
                if($ausente->exists()){
                        //caso esteja ausente, eh colocado na lista de ausentes
                        $lista = array();
                        $lista[] = $advogado ;
                        $encontrou = '1';
                        $i = 0;
                        //enquanto variavel for verdadeira continua looping
                        while($encontrou == '1'){
                                //sorteia o proximo advogado exceto aqueles que estao na lista de ausentes
                                $p1 = new Processo();
                                $advogado = $p1->sorteioUsuarioRedist($this->input->post('tipo_processo'), $lista, $this->input->post('excecao'));
                                if(empty($advogado)){
                                        echo '<div class="danger alert-danger" role="danger">Nenhum advogado atende o local selecionado!!</div>';
                                        exit();
                                }
                                $i++;
                                $ausentes = new Ausente();
                                $ausentes->usuarioAusente($advogado);
                                if($ausentes->exists()){
                                        if (in_array($advogado, $lista))
                                        {
                                                $tipo = new Tipoprocesso();
                                                $tipo = $tipo->get();
                                                $tipopermissao = array();
                                                foreach($tipo as $a){
                                                        $tipopermissao[$a->id ] = $a->nomeprocesso;
                                                }
                                                $data['tipoprocesso'] = $tipopermissao;
                                                $data['processo']  = $processo;
                                                echo '<div class="danger alert-danger" role="danger">Nenhum advogado está disponível!! Verificar com o administrador do sistema</div>';
                                                $this->load->view('v_processo',$data);
                                                $encontrou = 0;
                                                break;
                                        }
                                        else
                                        {
                                                $lista[] = $advogado ;
                                        }
                                }else{
                                        $encontrou = '0';
                                        break;
                                }
                        }
                        $processo->usuario_id_redist = $advogado;
						$processo->mov = 'R';
						
						//MENSAGEM DE RETORNO
						$r1usuario = new Usuario();
						$r1usuario->where("id",$usuario->id)->get();
						
						$retorno_nome_adv = $r1usuario->nome_completo;
						
						//MENSAGEM DE RETORNO
						$r1usuario = new Usuario();
						$r1usuario->where("id",$advogado)->get();
						
                        $retorno_nome_adv_red = $r1usuario->nome_completo;
                        $foiredistribuido = true;
                }
                
                
                
                $parte = new Parte();
                $processo->trans_begin();
                
                if($processo->save($usuario)){
                        //CONSULTA ID PARTE
                        if ($processo->trans_status() === FALSE)
                        {
                                // Transaction failed, rollback
                                $processo->trans_rollback();

                                // Add error message
                                $processo->error_message('transaction', 'The transaction failed to save (insert)');
                        }
                        else
                        {
                                $processo->trans_commit();
                                
								if($this->input->post("numero_processo_parce")){
									$p2 = new Processo_Usuario();
                                        
									$p2->processo_id = $processo->id;
									$p2->tipoevento_id = 8;
									$p2->usuario_id = $advogado;
									$p2->local_id = 2;
									$p2->status = 'RA';
									$p2->observacao = 'REDISTRUIÇÃO PARCELAMENTE/EMBARGO';
									$p2->save();
								}
								
								$acao = $processo->check_last_query(false,true);
								$log = new Log();
								$log->ip = $this->session->userdata('ip_address');
								$log->usuario = $session_data["nome"];
								$log->acao = $acao;
								$log->dt_log = date('Y-m-d H:i:s');
								$log->save();
                                
                                
                                $autores = explode(",", $this->input->post('autor'));
                                $reus = explode(",", $this->input->post('reu'));
                                
                                //CONSULTA ID PROCESSO
                                $processo = new Processo();
                                $processo->where('numeroprocesso', $this->input->post('numero_processo'))->get();
                        
                                // -- CADASTRAR MOVIMENTACAO DO PROCESSO.  PARA ISSO SERA NECESSARIO CONSULTAR O ID DO PROCESSO CADASTRADO --
                                if($foiredistribuido){
                                
                                        $p2 = new Processo_Usuario();
                                        
                                        $p2->processo_id = $processo->id;
                                        $p2->tipoevento_id = 8;
                                        $p2->usuario_id = $advogado;
                                        $p2->local_id = 2;
                                        $p2->status = 'RA';
                                        $p2->observacao = 'REDISTRUIÇÃO POR AUSENCIA';
                                        $p2->save();
										
										$acao = $p2->check_last_query(false,true);
										$log = new Log();
										$log->ip = $this->session->userdata('ip_address');
										$log->usuario = $session_data["nome"];
										$log->acao = $acao;
										$log->dt_log = date('Y-m-d H:i:s');
										$log->save();
                                
                                }
                        
                                // CADASTRO DOS AUTORES E REUS DO PROCESSO DEFININDO QUEM EH QUEM
                                foreach($autores as $autor){
                                        //CRIAR OBJETO RELACIONAMENTO PARTE-PROCESSO
                                        $a = new Parte_Processo();
                                        $a->parte_id = $autor;
                                        $a->processo_id = $processo->id;
                                        $a->tipos_parte = 'A';
                                        
                                        $a->save();
										
										$acao = $a->check_last_query(false,true);
										$log = new Log();
										$log->ip = $this->session->userdata('ip_address');
										$log->usuario = $session_data["nome"];
										$log->acao = $acao;
										$log->dt_log = date('Y-m-d H:i:s');
										$log->save();
                                }
                                foreach($reus as $reu){
                                        //CRIAR OBJETO RELACIONAMENTO PARTE-PROCESSO
                                        $r = new Parte_Processo();
                                        $r->parte_id = $reu;
                                        $r->processo_id = $processo->id;
                                        $r->tipos_parte = 'R';
                                        $r->save();
										
										$acao = $r->check_last_query(false,true);
										$log = new Log();
										$log->ip = $this->session->userdata('ip_address');
										$log->usuario = $session_data["nome"];
										$log->acao = $acao;
										$log->dt_log = date('Y-m-d H:i:s');
										$log->save();
                                }
                                echo $a->error->string;
                                echo $r->error->string;
                                
                                $string = 'Encaminhado para: '.$retorno_nome_adv."<br/>";
								if($retorno_nome_adv_red != ""){
									$string .= 'Redistribuido para: '.$retorno_nome_adv_red;
								}
								
								echo $string;
                        }
                }else{
                        $tipo = new Tipoprocesso();
                        $tipo = $tipo->get();
                        
                        $tipopermissao = array();
                        foreach($tipo as $a){
                                $tipopermissao[$a->id ] = $a->nomeprocesso;
                        }
                        $data['tipoprocesso'] = $tipopermissao;
                        $tipo = new Assunto();
                        $tipo = $tipo->get();
                        
                        $assunto = array();
                        foreach($tipo as $a){
                                $assunto[$a->id ] = $a->descricao;
                        }
                        $data['assunto'] = $assunto;
                        $data['processo']  = $processo;
                        //$this->load->view('header.php');
                        $this->load->view('v_processo',$data);
                }
                
                echo $processo->error->string;
                
            }
		}
	}
	public function editar(){
		//******************************************************
		//   PERMISSAO 
		//******************************************************
		$session_data = $this->session->userdata('disproju');
		temPermissao(array('1','2'),$session_data);
		
		$processo_id = $this->input->post('processo_id');
		$processo = new Processo();
		$processo->where("id",$processo_id )->get();
		
		$processo->tipoprocesso_id = $this->input->post('tipo_processo');
		$processo->dt_processo = brToUsa($this->input->post('dia'));
		$processo->numeroprocesso = $this->input->post('numero_processo');
		$processo->observacao = strtoupper($this->input->post('observacao'));
		$processo->cd_bic = $this->input->post('cod_bic');
		$processo->assunto_id = $this->input->post('assunto');

	
		$processo->trans_begin();
		
		if($processo->save()){
			//CONSULTA ID PARTE
			if ($processo->trans_status() === FALSE)
			{
				// Transaction failed, rollback
				$processo->trans_rollback();

				// Add error message
				$processo->error_message('transaction', 'The transaction failed to save (insert)');
			}
			else
			{
				$processo->trans_commit();
				
				$acao = $processo->check_last_query(false,true);
				$log = new Log();
				$log->ip = $this->session->userdata('ip_address');
				$log->usuario = $session_data["nome"];
				$log->acao = $acao;
				$log->dt_log = date('Y-m-d H:i:s');
				$log->save();
		
				$autores = explode(",", $this->input->post('autor'));
				$reus = explode(",", $this->input->post('reu'));
				
				$pp = new Parte_Processo();
				$pp->where('processo_id',$processo_id)->get();
				$pp->delete_all();
				
				$acao = $pp->check_last_query(false,true);
				$log = new Log();
				$log->ip = $this->session->userdata('ip_address');
				$log->usuario = $session_data["nome"];
				$log->acao = $acao;
				$log->dt_log = date('Y-m-d H:i:s');
				$log->save();
		
				// CADASTRO DOS AUTORES E REUS DO PROCESSO DEFININDO QUEM EH QUEM
				foreach($autores as $autor){
					//CRIAR OBJETO RELACIONAMENTO PARTE-PROCESSO
					$a = new Parte_Processo();
					$a->parte_id = $autor;
					$a->processo_id = $processo_id;
					$a->tipos_parte = 'A';
					
					$a->save();
					$acao = $a->check_last_query(false,true);
					$log = new Log();
					$log->ip = $this->session->userdata('ip_address');
					$log->usuario = $session_data["nome"];
					$log->acao = $acao;
					$log->dt_log = date('Y-m-d H:i:s');
					$log->save();
				}
				foreach($reus as $reu){
					//CRIAR OBJETO RELACIONAMENTO PARTE-PROCESSO
					$r = new Parte_Processo();
					$r->parte_id = $reu;
					$r->processo_id = $processo_id;
					$r->tipos_parte = 'R';
					$r->save();
					
					$acao = $r->check_last_query(false,true);
					$log = new Log();
					$log->ip = $this->session->userdata('ip_address');
					$log->usuario = $session_data["nome"];
					$log->acao = $acao;
					$log->dt_log = date('Y-m-d H:i:s');
					$log->save();
				}
				echo $a->error->string;
				echo $r->error->string;
				
				echo 'OK';
			}
		}else{
			$tipo = new Tipoprocesso();
			$tipo = $tipo->get();
			
			$tipopermissao = array();
			foreach($tipo as $a){
				$tipopermissao[$a->id ] = $a->nomeprocesso;
			}
			$data['tipoprocesso'] = $tipopermissao;
			$tipo = new Assunto();
			$tipo = $tipo->get();
			
			$assunto = array();
			foreach($tipo as $a){
				$assunto[$a->id ] = $a->descricao;
			}
			$data['assunto'] = $assunto;
			$data['processo']  = $processo;
			$this->load->view('header.php');
			$this->load->view('v_processo',$data);
		}
		
		echo $processo->error->string;
		
		
	}
	public function consulta(){
	
		$session_data = $this->session->userdata('disproju');
		$data["session_data"] = $session_data;
		
		$processo = new Processo();
		$aux = new Processo();
		
		if($this->input->post('search')){
			$string = $this->input->post('search');
		}else{
			$string = '';
		}
		
		if($this->input->post('status')){
			$status = $this->input->post('status');
		}else{
			$status = '';
		}
		
		$data['busca'] = $string;
		$data['status'] = $status;
		
		$assistente = new Usuario();
		$assistente->where("permissao_id","4")->order_by("nome_completo ASC")->get();
		$aux = array();
			foreach($assistente as $a){
				$aux[$a->id ] = $a->nome_completo;
			}
		$data['assistente'] = $aux;
		
		$this->load->view('header.php');
		$this->load->view('v_processo_consulta',$data);
	
	}
	public function consultaProcessosJson()	{
		$processo = new Processo();
		echo $processo->consultaProcessosJson();
	
	}
	public function meusprocessos(){
	
		$session_data = $this->session->userdata('disproju');
		$data["session_data"] = $session_data;
		
		$processo = new Processo();
		$aux = new Processo();
		
		if($this->input->post('search')){
			$string = $this->input->post('search');
		}else{
			$string = '';
		}
		
		if($this->input->post('status')){
			$status = $this->input->post('status');
		}else{
			$status = '';
		}
		
		$data['busca'] = $string;
		$data['status'] = $status;
		
		$assistente = new Usuario();
		$assistente->where("permissao_id","4")->order_by("nome_completo ASC")->get();
		$aux = array();
			foreach($assistente as $a){
				$aux[$a->id ] = $a->nome_completo;
			}
		$data['assistente'] = $aux;
		
		$this->load->view('header.php');
		$this->load->view('v_processo_meus',$data);
		
		
	}
	public function consultaMeusProcessosJson()	{
		$session_data = $this->session->userdata('disproju');
		
		$processo = new Processo();
		$aux = new Processo();
		echo $processo->consultaMeusProcessosJson($session_data['usuario_id']);
	
	}
	public function info($id = null){
		$session_data = $this->session->userdata('disproju');
		$data["session_data"] = $session_data;
		
		if( ! empty($id))
		{
			$processo = new Processo();
			$processo->get_by_id($id);
			if( ! $processo->exists())
			{
				show_error('Processo não existe!');
			}
		}
		$processo->dt_processo = usaToBr($processo->dt_processo);
		$data['processo_id'] = $id;
		
		$usuario = new Usuario();
		$usuario->where("id",$processo->usuario_id)->get();
		$data['nomeusuario'] = $usuario;
		
		
		if(!empty($processo->usuario_id_redist)){
			$usuario = new Usuario();
			$usuario->where("id", $processo->usuario_id_redist)->get();
			$data['nomeusuarioredist'] = $usuario;
			
		}else{
			$usuario = new Usuario();
			$data['nomeusuarioredist'] = $usuario;
		}
		
		if(!empty($processo->usuario_id_assis)){
			$usuario = new Usuario();
			$usuario->where("id", $processo->usuario_id_assis)->get();
			$data['nomeusuarioassis'] = $usuario;
			
		}else{
			$usuario = new Usuario();
			$data['nomeusuarioassis'] = $usuario;
		}
		//******************************************************************************
		//  CONSULTA PARTES
		//******************************************************************************
		$parte_processo = new Parte_Processo();
		$parte_processo->where("processo_id", $id)->get();
		
		$autor = array();
		$reu = array();
		
		foreach($parte_processo as $p) {
			if($p->tipos_parte == 'A'){
				$autor[] = $p->parte_id;
			}elseif($p->tipos_parte == 'R'){
				$reu[] = $p->parte_id;
			}
		}
		//CONSTAUL TOKENINPUT
		$assunto = new Assunto();
		$assunto->where_in('id', $processo->assunto_id)->get();
		
		$dados = array();
		$aux = array();
		foreach($assunto as $a){
			$aux['id'] = $a->id;
			$aux['name'] = $a->descricao;
			array_push($dados,$aux);
		}
		$data["assunto"] = json_encode($dados);
		
		$partes = new Parte();
		$partes->where_in('id', $autor);
		$partes->get();
		
		$dados = array();
		$aux = array();
		foreach($partes as $parte){
			$aux['id'] = $parte->id;
			$aux['name'] = $parte->nome_parte;
			array_push($dados,$aux);
		}
		$data["autor"] = json_encode($dados);
		
		$partes->where_in('id', $reu);
		$partes->get();
		$dados = array();
		$aux = array();
		foreach($partes as $parte){
			$aux['id'] = $parte->id;
			$aux['name'] = $parte->nome_parte;
			array_push($dados,$aux);
		}
		$data["reu"] = json_encode($dados);
		
		//******************************************************************************
		
		$data['processo'] = $processo;
		
		$tipo = new Tipoprocesso();
		$tipo = $tipo->get();
		
		$tipopermissao = array();
		foreach($tipo as $a){
			$tipopermissao[$a->id ] = $a->nomeprocesso;
		}
		$data['tipoprocesso'] = $tipopermissao;

		
		$evento = new Evento();
		$aux = new Evento();
		$aux  = $evento->listaEvento($p->processo_id);
		$data["evento"] = $aux;
		
		$evento = new Evento();
		$aux = new Evento();
		$aux  = $evento->historico($p->processo_id);
		$data["historico"] = $aux;
		
	
		//TAB MOVIMENTACAO
		$usuario = new Usuario();
		$usuario = $usuario->where("permissao_id","3")->where("status","1")->order_by("nome_completo asc")->get();
		$usuarios = array();
		foreach($usuario as $a){
			$usuarios[$a->id ] = $a->nome_completo;
		}
		$data['usuario'] = $usuarios;
		
		$tipoevento = new TipoEvento();
		$te = $tipoevento->where_in('id', Array('1','2','8','9'))->order_by("nome_evento asc")->get();
		$tes = array();
		foreach($te as $a){
			$tes[$a->id ] = $a->nome_evento;
		}
		$data['tipoevento'] = $tes;
		
		$local = new Local();
		$locais = $local->order_by("nome_local asc")->get();
		$lo = array();
		foreach($locais as $a){
			$lo[$a->id ] = $a->nome_local;
		}
		$data['local'] = $lo;
		
		//ABA ASSENTAMENTO
		$assentamento = new Assentamento();
		$aux = new Assentamento();
		$aux = $assentamento->consultaAssentamento($id);
		if($aux->exists()){
			$data['assent'] = $aux;
		}else{
			$data['assent'] = null;
		}
		
		$this->load->view('header');
		$this->load->view('v_processo_info',$data);
	}
	public function arquivar(){
		$p = new Processo();
		$this->load->view('header.php');
		$this->load->view('v_processo');
	}
	public function validaProcesso(){
		$numero_processo = $_GET['numero_processo'];
		
		$p = new Processo();
		$p->get_by_numeroprocesso($numero_processo);
		if( ! $p->exists())
		{
			//return true;
			echo "true";
		}else{
			//return false;
			echo "false";
		}

	}
	public function validaProcessoParcelamento(){
		$numero_processo = $_GET['numero_processo_parce'];
		
		$p = new Processo();
		$p->get_by_numeroprocesso($numero_processo);
		if( ! $p->exists())
		{
			//return true;
			echo "false";
		}else{
			//return false;
			echo "true";
		}

	}
	public function validaProcessoAudiencia(){
		$numero_processo = $_GET['numero_processo'];
		
		$p = new Processo();
		$p->get_by_numeroprocesso($numero_processo);
		if( ! $p->exists())
		{
			//return true;
			echo "false";
		}else{
			//return false;
			echo "true";
		}

	}
	public function nomePartes(){
		$processo = new Parte_Processo('2');
		
		$processo->include_related('parte', array('nome_parte'))->order_by("tipos_parte asc")->get();
		foreach($processo as $p) {
			echo $p->parte_nome_parte." | ".$p->tipos_parte."<br/>";
		}
	}
	public function consultaProcessos(){
	
		$numero_processo = $_GET['term'];
		
		$processo = new Processo();
		$processo->like('numeroprocesso', $numero_processo);
		$processo->get();
		
		$dados = array();
		$aux = array();
		foreach($processo as $u){
			$aux["value"] = $u->numeroprocesso;
			$aux["name"] = $u->numeroprocesso;
			$aux["id"] = $u->id;
			array_push($dados,$aux);
		}
		echo json_encode($dados);
	
	}
	public function processoExiste(){
		$numero_processo = $_GET['numero_processo'];
		
		$p = new Processo();
		$p->get_by_numeroprocesso($numero_processo);
		if( ! $p->exists())
		{
			//return true;
			echo "false";
		}else{
			//return false;
			echo "true";
		}

	}
	public function relatoriosaida(){
		//******************************************************
		//   PERMISSAO 
		//******************************************************
		$session_data = $this->session->userdata('disproju');
		temPermissao(array('1','2'),$session_data);
		if($this->input->post()){
		
			$evento = new Evento();
			$aux = new Evento();
			$aux = $evento->relatorioSaida($this->input->post("dia"),$this->input->post("tipoprocesso"),$this->input->post("local"));
		
			$local = new Local();
			$local->where("id",$this->input->post("local"))->get();
			//------------------------------------------------------------------------------------------------------------------------
		
			$pdf = new Pdf(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
			gerarRelatorio($pdf);
			$pdf->AddPage('L', 'A4');
			
			// TITULO DA PAGINA
			$pdf->Write(0, 'Relação de Devolução de Carga', '', 0, 'C', true, 0, false, false, 0);
			$pdf->Ln();
			//$pdf->SetTextColor(0,0,240);
			$pdf->SetFont('times', '', 9);
			$pdf->Write(0, 'Local da Carga: '.$local->nome_local, '', 0, 'L', true, 0, false, false, 0);
			$pdf->Ln();
			$pdf->Write(0, 'Data: '.$this->input->post("dia"), '', 0, 'L', true, 0, false, false, 0);
			$pdf->Ln();
			if($aux->exists()){	
				//TESTE TABELA
				//*************************************************************************************
				// CABEÇALHO
				//*************************************************************************************
				$header = array('#','Autos','Tipo Processo','Advogado Responsável');
				// Colors, line width and bold font
				$pdf->SetFillColor(208, 208, 208);
				$pdf->SetTextColor(0);
				$pdf->SetDrawColor(0, 0, 0);
				$pdf->SetLineWidth(0.3);
				$pdf->SetFont('times', 'B', 10);
				// Header
				$w = array(10,45,50,170);
				$num_headers = count($header);
				for($i = 0; $i < $num_headers; ++$i) {
					$pdf->Cell($w[$i], 7, $header[$i], 1, 0, 'C', 1);
				}
				$pdf->Ln();
				//*************************************************************************************
				// DADOS
				//*************************************************************************************
				// Color and font restoration
				$pdf->SetFillColor(224, 235, 255);
				$pdf->SetTextColor(0);
				$pdf->SetFont('times', '', 8);
				// Data
				$fill = 0;

				$count = 1;
				foreach($aux as $row) {
					$pdf->Cell($w[0], 6,$count++, 'LR', 0, 'C', $fill);
					$pdf->Cell($w[1], 6,$row->numeroprocesso, 'LR', 0, 'C', $fill);
					$pdf->Cell($w[2], 6, $row->nomeprocesso, 'LR', 0, 'C', $fill);
					if($row->redistribuido != ''){
						$pdf->Cell($w[3], 6, $row->nome_completo.'  ==> '.$row->redistribuido, 'LR', 0, 'L', $fill);
					}else{
						$pdf->Cell($w[3], 6, $row->nome_completo, 'LR', 0, 'L', $fill);
					}
					$pdf->Ln();
					$fill=!$fill;
				}
				// FINALIZA TABELA
				$pdf->Cell(array_sum($w), 0, '', 'T');
				
				/*
				$html = "";
				$pdf->writeHTML($html, true, false, true, false, '');
				*/
				
				$pdf->Output('Relatorio_Devolucao.pdf', 'I');
			}else{
				$pdf->Write(0, 'Nenhum registro foi encontrado', '', 0, 'C', true, 0, false, false, 0);
				$pdf->Output('Relatorio_Devolucao.pdf', 'I');
			
			
			}
		}else{
			$locais = new Local();
			$locais->order_by("nome_local asc")->get();
			$local = array();
			foreach($locais as $a){
				$local[$a->id ] = $a->nome_local;
			}
			
			$data["local"] = $local;
			
			$tipo = new Tipoprocesso();
			$tipo->get();
			
			$tipopermissao = array();
			$aux = array();
			$dados = array();
			
			foreach($tipo as $a){
				$tipopermissao[$a->id ] = $a->nomeprocesso;
				$aux['id'] = $a->id;
				$aux['name'] = $a->nomeprocesso;
				array_push($dados,$aux);
			}
			
			$data['tipoprocesso'] = $tipopermissao;
			$data['tipoprocessoinfo'] = json_encode($dados);
			$this->load->view('header.php');
			$this->load->view('v_relatorio_saida',$data);
		}
	}
	public function relatorioredistribuicao(){
		//******************************************************
		//   PERMISSAO 
		//******************************************************
		$session_data = $this->session->userdata('disproju');
		temPermissao(array('1','2'),$session_data);
		if($this->input->post()){

			
			$dados = array();
			$aux = array();
			//SELECIONA OS ADVOGADOS OU O ADVOGADO
			$usuario = new Usuario();
			if($this->input->post("usuario") == '999'){
				$usuario->where("status","1")->where("permissao_id","3")->get();
			
			}else{
				$usuario->where("status","1")->where("permissao_id","3")->where("id",$this->input->post("usuario"))->get();
			
			}
			
			foreach($usuario as $u){
				$aux = array();
				$aux[] = $u->nome_completo;
				//echo $u->nome_completo."<br/>";
				
				$processo = new Processo();
				$processo = $processo->consultaRedistribuicao($u->id,brToUsa($this->input->post("inicio")),brToUsa($this->input->post("fim")));
				$pro = array();
				foreach($processo as $p){
			
					$pro[] = $p->dt_processo;
					$pro[] = $p->id;
					$pro[] = $p->numeroprocesso;
					$pro[] = $p->nomeprocesso;
					$pro[] = $p->nome_completo;
					//array_push($aux, $pro);
					$aux[] = $pro;
					$pro = array();
					
				}
				array_push($dados, $aux);
			}
			
		/* 	echo '<pre>';
			print_r($dados);
			echo '</pre>'; */
			
			$data["dados"] = $dados;
			$this->load->view('header.php');
			$this->load->view('v_redistribuicao', $data);
		}else{
			$u = new Usuario();
			$u->where('permissao_id', "3")->order_by("nome_completo asc")->get();
			$user = array();
			foreach($u as $a){
				$user[$a->id ] = $a->nome_completo;
			}
			$data["usuario"] = $user;
			
			$tipo = new TipoProcesso();
			$tipo->order_by("nomeprocesso asc")->get();
			$tp = array();
			foreach($tipo as $a){
				$tp[$a->id ] = $a->nomeprocesso;
			}
			$data["tipoprocesso"] = $tp;
			
			$this->load->view('header.php');
			$this->load->view('v_relatorio_redistribuicao',$data);
		}
	}
	public function relatorioanual(){
		//******************************************************
		//   PERMISSAO 
		//******************************************************
		$session_data = $this->session->userdata('disproju');
		temPermissao(array('1','2'),$session_data);
		if($this->input->post()){
			$session_data = $this->session->userdata('disproju');
			$data["session_data"] = $session_data;
			
			
			$inicio = brToUsa($this->input->post("inicio"));	
			$fim = brToUsa($this->input->post("fim"));
			
			$data["inicio"] = $this->input->post("inicio");
			$data["fim"] = $this->input->post("fim");
			
			
			$p = new Processo();
			$p->select("COUNT(*) as valor")->where_between('dt_cadastro','"'.$inicio.'"','"'.$fim.'"')->get();
			
			$data["valor1"] = $p->valor;
			
			$p = new Processo();
			$p->select("COUNT(*) as valor")->where_between('dt_cadastro','"'.$inicio.'"','"'.$fim.'"')->where("mov","E")->get();
			$data["valor2"] = $p->valor;
			
			$p = new Processo();
			$p->select("COUNT(*) as valor")->where_between('dt_cadastro','"'.$inicio.'"','"'.$fim.'"')->where("mov","S")->get();
			$data["valor3"] = $p->valor;
			
			$p = new Processo();
			$p->select("COUNT(*) as valor")->where_between('dt_cadastro','"'.$inicio.'"','"'.$fim.'"')->where("mov","R")->get();
			$data["valor4"] = $p->valor;
			
			$p = new Processo();
			$p->select("COUNT(*) as valor")->where_between('dt_cadastro','"'.$inicio.'"','"'.$fim.'"')->where("tipoprocesso_id","1")->get();
			$data["valor5"] = $p->valor;
			
			$p = new Processo();
			$p->select("COUNT(*) as valor")->where_between('dt_cadastro','"'.$inicio.'"','"'.$fim.'"')->where("tipoprocesso_id","2")->get();
			$data["valor6"] = $p->valor;
			
			$p = new Processo();
			$p->select("COUNT(*) as valor")->where_between('dt_cadastro','"'.$inicio.'"','"'.$fim.'"')->where("tipoprocesso_id","3")->get();
			$data["valor7"] = $p->valor;
			
			$p1 = new Processo();
			$dados1 = $p1->consultaProcessosGraficoAnual($inicio, $fim);
			$data["graf2"] = json_encode($dados1);
			
			$p2 = new Processo();
			
			$dados2 = $p2->consultaProcessosGraficoUsuariosAnual('1', $inicio, $fim);
			$data["adm"] = json_encode($dados2);
			//echo json_encode($dados2);
			
			$dados3 = $p2->consultaProcessosGraficoUsuariosAnual('2', $inicio, $fim);
			$data["jud"] = json_encode($dados3);
			//echo json_encode($dados3);
			$dados2 = $p2->consultaProcessosGraficoUsuariosAnual('3', $inicio, $fim);
			$data["exec"] = json_encode($dados2);
			//echo json_encode($dados2);
			$dados2 = $p2->consultaProcessosGraficoUsuariosAnual('999', $inicio, $fim);
			$data["usuario"] = json_encode($dados2);
			//echo json_encode($dados2);
			
		
		
			$this->load->view('header');
			$this->load->view('v_relatorioanualal',$data);
	
			
		}else{
			$u = new Usuario();
			$u->where('permissao_id', "3")->order_by("nome_completo asc")->get();
			$user = array();
			foreach($u as $a){
				$user[$a->id ] = $a->nome_completo;
			}
			$data["usuario"] = $user;
			
			$tipo = new TipoProcesso();
			$tipo->order_by("nomeprocesso asc")->get();
			$tp = array();
			foreach($tipo as $a){
				$tp[$a->id ] = $a->nomeprocesso;
			}
			$data["tipoprocesso"] = $tp;
			
			$evento = new TipoEvento();
			$evento->order_by("nome_evento asc")->get();
			$e = array();
			foreach($evento as $a){
				$e[$a->id ] = $a->nome_evento;
			}
			$data["evento"] = $e;
			
			$this->load->view('header.php');
			$this->load->view('v_relatorio_anual',$data);
		}

	}
	public function usuarioAusente($id){
		$ausente = new Ausente();
		$ausente->usuarioAusente('9');
	}
	public function salvarMovimentacao(){
		//******************************************************
		//   PERMISSAO 
		//******************************************************
		$session_data = $this->session->userdata('disproju');
		temPermissao(array('1','2'),$session_data);
		if($this->input->post()){
		
			//CONSULTA ULTIMO EVENTO DO PROCESSO
			$movi = new Processo_Usuario();
			$status = $movi->where('processo_id',$this->input->post('processo_id'))
			->order_by('id desc')
			->limit('1')
			->get();
			
			$aux = array();
			$aux['processo'] = $movi->processo_id;
			$aux['usuario'] = $movi->usuario_id;
			$aux['tipoevento'] = $movi->tipoevento_id;
				
			
			//OBJETO SALVAR NO BANCO
			$a = new Processo_Usuario();
			$a->processo_id = $this->input->post('processo_id');
			$a->tipoevento_id = $this->input->post('tipoevento');
			$observacao =  mb_strtoupper($this->input->post("justificativa"), 'UTF-8');
			$a->observacao = $observacao;
			$a->local_id = $this->input->post('local');
			
			
			
			//CONSULTA DADOS PROCESSO
			$processo = new Processo();
			//$processo->where('id',$a->processo_id)->get();
			$processo->where('id',$this->input->post('processo_id'))->get();
			
			$advogado = $processo->usuario_id;
			$redistribuicao = $processo->usuario_id_redist;
			$tipoprocesso = $processo->tipoprocesso_id;

			
			if($redistribuicao == null){
				$a->usuario_id = $advogado;
			}else{
				$a->usuario_id = $redistribuicao;
			}

			//ENTRADA
			if($a->tipoevento_id == '1'){
				//CASO MOVIMENTACAO ANTERIOR EH IGUAL A MOVIMENTACAO ATUAL, APRESENTA ERRO
				//if($aux['tipoevento'] == '1'){
				if($processo->mov == 'E'){
					echo '<div class="danger alert-danger" role="danger">ERRO - MOVIMENTACAO ANTERIOR ENTRADA</div>';
					exit(0);
				//}elseif($aux['tipoevento'] == '2'){
				}elseif($processo->mov == 'S'){
					//STATUS
					$processo->mov = 'E';
					$a->status = 'S';
					$processo->status = '1';
				//}elseif($aux['tipoevento'] == '9'){
				}elseif($processo->status == '0'){
					//STATUS
					$a->status = 'D';
					$processo->status = '1';
				}
				
			//SAIDA
			}elseif($a->tipoevento_id == '2'){
				
				//if($aux['tipoevento'] == '2' && $processo->mov == 'S'){
				if($processo->mov == 'S'){
					echo '<div class="danger alert-danger" role="danger">ERRO - MOVIMENTACAO ANTERIOR SAIDA</div>';
					exit(0);
				}else{
					//STATUS
					$a->status = 'S';
					$a->dt_evento = brToUsaHora($this->input->post('saida'));
					$processo->mov = 'S';
				}
				
			//REDISTRIBUICAO
			}elseif($a->tipoevento_id == '8'){
				//SENHA PROCURADOR
				$pass = $this->input->post('senha');
				
				//SELECIONA USUARIO PROCURADOR GERAL
				$user= new Usuario();
				$user->where("excecao", "3")->limit("1")->get();
				if(validaActiveDirectoryProcurador($user->login, $pass,$user->grupoAD)){
					if($this->input->post('tiporedistribuicao') == '1'){
						
						$novosuser = new Usuario();
						$novosuser->where("id", $advogado)->get();
						
						$lista = array();
						$lista[] = $advogado ;
						$encontrou = '1';
						//ENQUANTO VARIAVEL FOR IGUAL A 1 CONTINUA NO LOOPING
						while($encontrou == '1'){
								//sorteia o proximo advogado exceto aqueles que estao na lista de ausentes
								$p1 = new Processo();
								$advogado = $p1->sorteioUsuarioManual($tipoprocesso, $lista);
								if(empty($advogado)){
										echo '<div class="danger alert-danger" role="danger">Nenhum advogado atende o local selecionado!!</div>';
										exit();
								}
								$ausentes = new Ausente();
								$ausentes->usuarioAusente($advogado);
								if($ausentes->exists()){
										if (in_array($advogado, $lista))
										{
												$tipo = new Tipoprocesso();
												$tipo = $tipo->get();
												$tipopermissao = array();
												foreach($tipo as $a){
														$tipopermissao[$a->id ] = $a->nomeprocesso;
												}
												$data['tipoprocesso'] = $tipopermissao;
												$data['processo']  = $processo;
												echo '<div class="danger alert-danger" role="danger">Nenhum advogado está disponível!! Verificar com o administrador do sistema</div>';
												$this->load->view('v_processo',$data);
												$encontrou = 0;
												break;
										}
										else
										{
												$lista[] = $advogado ;
										}
								}else{
										$encontrou = '0';
										break;
								}
						}
						
						
						//ADVOGADO SORTEADO
						$a->usuario_id = $advogado; //SORTEIO
						//STATUS
						$a->status = 'RM';
						
						$processo->usuario_id = $advogado; //SORTEIO
						
					}elseif($this->input->post('tiporedistribuicao') == '2'){
						if($this->input->post('usuario') == $advogado){
							echo '<div class="danger alert-danger" role="danger">ERRO - PROCESSO REDISTRIBUICAO PARA MESMO USUARIO</div>';
							exit(0);
						}else{
							//ADVOGADO
							$a->usuario_id = $this->input->post('usuario');
							//STATUS
							$a->status = 'RS';
							$processo->usuario_id = $this->input->post('usuario');
						}
					}
				}else{
					echo '<div class="danger alert-danger" role="danger">Senha Procurador geral incorreta - Redistribuicao nao efetuada!</div>';
					exit(0);
				}
				
			//ARQUIVADO
			}elseif($a->tipoevento_id == '9'){
				if($processo->status == '0'){
					echo '<div class="danger alert-danger" role="danger">ERRO - MOVIMENTACAO ANTERIOR ARQUIVADO</div>';
					exit(0);
				}else{
					//ADVOGADO
					$a->usuario_id = $this->input->post('usuario');
					
					//STATUS
					$a->status = 'A';
					$processo->status = '0';
					$processo->mov = 'A';
				}
			}
			
			
			if($a->save()){
			
				$acao = $a->check_last_query(false,true);
				$log = new Log();
				$log->ip = $this->session->userdata('ip_address');
				$log->usuario = $session_data["nome"];
				$log->acao = $acao;
				$log->dt_log = date('Y-m-d H:i:s');
				$log->save();
					
				$processo->save();
				
				$acao = $processo->check_last_query(false,true);
				$log = new Log();
				$log->ip = $this->session->userdata('ip_address');
				$log->usuario = $session_data["nome"];
				$log->acao = $acao;
				$log->dt_log = date('Y-m-d H:i:s');
				$log->save();
					
				
				echo 'MOVIMENTAÇÃO REALIZADA COM SUCESSO!';
			}else{
				echo 'ERRO AO SALVAR';
				exit(0);
			}
		
		}else{
			echo 'ERRO - POST';
			exit(0);
		
		}

	}
	public function assistente($id = null){
		//******************************************************
		//   PERMISSAO 
		//******************************************************
		$session_data = $this->session->userdata('disproju');
		temPermissao(array('1','2','3'),$session_data);
		
		if($this->input->post()){
			$processo = new Processo();
			$processo->where("id",$this->input->post("processo_id"))->get();
			$processo->usuario_id_assis = $this->input->post("assistente");
			
			if($processo->save()){
				
				$acao = $processo->check_last_query(false,true);
				$log = new Log();
				$log->ip = $this->session->userdata('ip_address');
				$log->usuario = $session_data["nome"];
				$log->acao = $acao;
				$log->dt_log = date('Y-m-d H:i:s');
				$log->save();
			
				$assentamento = new Assentamento();
				$assentamento->processo_id = $this->input->post("processo_id");
				$assentamento->usuario_id = $session_data["usuario_id"];
				$observacao =  mb_strtoupper($this->input->post("observacao"), 'UTF-8');
				$assentamento->assentamento = $observacao;
				if($assentamento->save()){
					
					$acao = $assentamento->check_last_query(false,true);
					$log = new Log();
					$log->ip = $this->session->userdata('ip_address');
					$log->usuario = $session_data["nome"];
					$log->acao = $acao;
					$log->dt_log = date('Y-m-d H:i:s');
					$log->save();
				
					$p2 = new Processo_Usuario();
					$p2->processo_id = $processo->id;
					$p2->usuario_id = $this->input->post("assistente");
					$p2->tipoevento_id = '8';
					$p2->local_id = '2';
					$p2->status = 'AS';
					$p2->observacao = 'PROCESSO COM ASSISTENTE';
					$p2->save();
					
					$acao = $p2->check_last_query(false,true);
					$log = new Log();
					$log->ip = $this->session->userdata('ip_address');
					$log->usuario = $session_data["nome"];
					$log->acao = $acao;
					$log->dt_log = date('Y-m-d H:i:s');
					$log->save();
					
					echo "Registro salvo";
				}
			}
			
		}else{
			$assistente = new Usuario();
			$assistente->where("permissao_id","4")->order_by("nome_completo ASC")->get();
			$aux = array();
			foreach($assistente as $a){
				$aux[$a->id ] = $a->nome_completo;
			}
			$data['assistente'] = $aux;
			$data["processo_id"] = $id;
			$this->load->view('v_assistente',$data);
		}
	}
	public function removeAssistente($id,$assis){
		//******************************************************
		//   PERMISSAO 
		//******************************************************
		$session_data = $this->session->userdata('disproju');
		temPermissao(array('1','2','3'),$session_data);
		
		if(!empty($id)){
				$processo = new Processo();
				$processo->where("id",$id)->get();
				$processo->usuario_id_assis = null;
				
				if($processo->save()){
				
					$acao = $processo->check_last_query(false,true);
					$log = new Log();
					$log->ip = $this->session->userdata('ip_address');
					$log->usuario = $session_data["nome"];
					$log->acao = $acao;
					$log->dt_log = date('Y-m-d H:i:s');
					$log->save();
					
					$p2 = new Processo_Usuario();
					$p2->processo_id = $id;
					//$p2->usuario_id = $assis;
					$p2->usuario_id =$processo->usuario_id;
					$p2->tipoevento_id = '8';
					$p2->local_id = '2';
					$p2->status = 'ASR';
					$p2->observacao = 'PROCESSO COM ADVOGADO';
					$p2->save();
					
					echo "Assistente Removido";
					
					$acao = $p2->check_last_query(false,true);
					
					$log = new Log();
					$log->ip = $this->session->userdata('ip_address');
					$log->usuario = $session_data["nome"];
					$log->acao = $acao;
					$log->dt_log = date('Y-m-d H:i:s');
					$log->save();
				}else{
					echo 'Erro ao remover assistente';
				}
			
		}else{
			echo 'Erro ao remover assistente';
		}
	}
	public function assentamento(){
		//******************************************************
		//   PERMISSAO 
		//******************************************************
		$session_data = $this->session->userdata('disproju');
		temPermissao(array('1','2','3','4'),$session_data);
		
		if($this->input->post()){
			$assentamento = new Assentamento();
			$assentamento->processo_id = $this->input->post("processo_id");
			$assentamento->usuario_id = $session_data["usuario_id"];
			$observacao =  mb_strtoupper($this->input->post("observacao"), 'UTF-8');
			$assentamento->assentamento = $observacao;
			
			if($assentamento->save()){
				$acao = $assentamento->check_last_query(false,true);
				echo "Registro salvo";
				
				$log = new Log();
				$log->ip = $this->session->userdata('ip_address');
				$log->usuario = $session_data["nome"];
				$log->acao = $acao;
				$log->dt_log = date('Y-m-d H:i:s');
				$log->save();
				
			}
		}
	}
	public function loadAssentamento(){
	
		if($this->input->post()){
			$assentamento = new Assentamento();
			$aux = new Assentamento();
			$aux = $assentamento->consultaAssentamento($this->input->post('processo_id'));
			if($aux->exists()){
				$data['assent'] = $aux;
			}else{
				$data['assent'] = null;
			}
			
			$this->load->view('v_processo_assentamento',$data);
			
		}
	}
	public function audienciaProcesso(){
	
		$evento = new Evento();
		$aux = new Evento();
		$aux  = $evento->listaEvento($this->input->post("processo_id"));
		$data["evento"] = $aux;
		$this->load->view('v_processo_audiencia',$data);
	}
	public function graficoMes($id){
		$processo = new Processo();
		$p2 = new Processo();
		$p2 = $processo->graficoMes($id);
		return $p2;
		
	}
	public function acompanhamento($id){	
		//******************************************************
		//   PERMISSAO 
		//******************************************************
		$session_data = $this->session->userdata('disproju');
		temPermissao(array('1','2','3'),$session_data);
		
		if(!empty($id)){
			
			//CONSULTA DADOS REUS DO PROCESSO
			$p1 = new Parte_Processo();
			$aux1 = new Parte_Processo();
			$aux1 = $p1->acompanhamento($id,'R');
			
			//CONSULTA DADOS AUTORES DO PROCESSO
			$p2 = new Parte_Processo();
			$aux2 = new Parte_Processo();
			$aux2 = $p2->acompanhamento($id,'A');
			
			//CONSULTA DADOS AUTORES DO PROCESSO
			$p3 = new Processo();
			$aux3 = new Processo();
			$aux3 = $p3->acompanhamento($id);
			//------------------------------------------------------------------------------------------------------------------------
		
			$pdf = new Pdf(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
			gerarRelatorio($pdf);
			$pdf->AddPage('P', 'A4');
			// TITULO DA PAGINA
			$pdf->Write(0, 'ACOMPANHAMENTO PROCESSUAL', '', 0, 'C', true, 0, false, false, 0);
			$pdf->Ln();
			$pdf->SetFont('times', '', 9);
			//$pdf->Write(0, 'Período: '.$this->input->post("inicio").' à '.$this->input->post("fim"), '', 0, 'C', true, 0, false, false, 0);
			$pdf->Ln();
			//if($aux->exists()){	
				//*************************************************************************************
				// DADOS
				//*************************************************************************************
				// Color and font restoration
				$pdf->SetFillColor(255, 255, 255);
				$pdf->SetTextColor(0);
				$pdf->SetFont('times', '', 8);
				$tabela = '';
				foreach($aux1 as $a1){
					$tabela .= '<table border="0" cellspadding="0" cellspacing="1" width="100%">';
					//LINHA 1
					$tabela .= '<tr>';
						$tabela .= '<td width="12%">Cliente:</td>';
						$tabela .= '<td width="45%"><b>'.$a1->nome_parte.'</b></td>';
						$tabela .= '<td width="10%"></td>';
						$tabela .= '<td width="35%"></td>';
					$tabela .= '</tr>';
					//LINHA 2
					$tabela .= '<tr>';
						$tabela .= '<td>Cidade/UF:</td>';
						$tabela .= '<td>'.$a1->cidade.' / '.$a1->estado.'</td>';
						$tabela .= '<td align="right">Telefone:</td>';
						$tabela .= '<td>'.$a1->telefone.'</td>';
					$tabela .= '</tr>';
					//LINHA 3
					$tabela .= '<tr>';
						$tabela .= '<td>Adv/Resp/OAB:</td>';
						$tabela .= '<td></td>';
						$tabela .= '<td align="right">Telefone:</td>';
						$tabela .= '<td></td>';
					$tabela .= '</tr>';
					$tabela .= '</table>';
					$tabela .= '<br/><br/>';
				}
				
				$tabela .= '<br/>______________________________________________________________________________________________________________________________<br/><br/>';
				foreach($aux2 as $a2){
					$tabela .= '<table border="0" cellspadding="0" width="100%">';
					//LINHA 1
					$tabela .= '<tr>';
						$tabela .= '<td width="12%">Parte Contrária:</td>';
						$tabela .= '<td width="45%"><b>'.$a2->nome_parte.'</b></td>';
						$tabela .= '<td width="10%"></td>';
						$tabela .= '<td width="35%"></td>';
					$tabela .= '</tr>';
					//LINHA 2
					$tabela .= '<tr>';
						$tabela .= '<td>Documentos:</td>';
						$tabela .= '<td>'.$a2->descricao.'</td>';
						$tabela .= '<td align="right">CPF/CNPJ:</td>';
						$tabela .= '<td>'.$a2->cpfcnpj.'</td>';
					$tabela .= '</tr>';
					//LINHA 3
					$tabela .= '<tr>';
						$tabela .= '<td>Endereço:</td>';
						$tabela .= '<td>'.$a2->endereco.'</td>';
						$tabela .= '<td></td>';
						$tabela .= '<td></td>';
					$tabela .= '</tr>';
					//LINHA 4
					$tabela .= '<tr>';
						$tabela .= '<td>Cidade/UF:</td>';
						$tabela .= '<td>'.$a2->cidade.' / '.$a2->estado.'</td>';
						$tabela .= '<td align="right">Telefone:</td>';
						$tabela .= '<td>'.$a2->telefone.'</td>';
					$tabela .= '</tr>';
					//LINHA 5
					$tabela .= '<tr>';
						$tabela .= '<td>Adv/Resp/OAB:</td>';
						$tabela .= '<td></td>';
						$tabela .= '<td align="right">Telefone:</td>';
						$tabela .= '<td></td>';
					$tabela .= '</tr>';
					$tabela .= '</table>';
					$tabela .= '<br/><br/>';
				}
				
				$tabela .= '<br/>______________________________________________________________________________________________________________________________<br/><br/>';
				foreach($aux3 as $a3){
					$tabela .= '<table border="0" cellspadding="0" width="100%">';
					//LINHA 0
					$tabela .= '<tr>';
						$tabela .= '<td width="12%">Data Processo:</td>';
						$tabela .= '<td width="35%"><b>'.usaToBr($a3->dt_processo).'</b></td>';
						$tabela .= '<td align="right" width="20%"></td>';
						$tabela .= '<td width="20%"></td>';
					$tabela .= '</tr>';
					//LINHA 1
					$tabela .= '<tr>';
						$tabela .= '<td>Processo Número:</td>';
						$tabela .= '<td><b>'.$a3->numeroprocesso.'</b></td>';
						$tabela .= '<td align="right">Vara/Fórum:</td>';
						$tabela .= '<td></td>';
					$tabela .= '</tr>';
					//LINHA 2
					$tabela .= '<tr>';
						$tabela .= '<td>Responsável:</td>';
						$tabela .= '<td><b>'.$a3->nome_completo.'</b></td>';
						$tabela .= '<td></td>';
						$tabela .= '<td></td>';
					$tabela .= '</tr>';
					//LINHA 3
					$tabela .= '<tr>';
						$tabela .= '<td>Tipo de Ação:</td>';
						$tabela .= '<td><b>'.$a3->nomeprocesso.' - '.$a3->descricao.'</b></td>';
						$tabela .= '<td></td>';
						$tabela .= '<td></td>';
					$tabela .= '</tr>';
					//LINHA 4
					$tabela .= '<tr>';
						$tabela .= '<td>Valor/Causa (R$):</td>';
						$tabela .= '<td></td>';
						$tabela .= '<td align="right">Assistência Judiciária:</td>';
						$tabela .= '<td></td>';
					$tabela .= '</tr>';
					$tabela .= '</table>';
					
				}
				$tabela .= '<br/>______________________________________________________________________________________________________________________________<br/><br/>';
				$tabela .= "<br/><br/><b>ASSENTAMENTOS</b><br/><br/>";
				
				//ABA ASSENTAMENTO
				$assentamento = new Assentamento();
				$aux = new Assentamento();
				$aux = $assentamento->consultaAssentamento($id);
				if($aux->exists()){
					foreach($aux as $ass){
						$tabela .= '<span style="background-color:#D8D8D8;">'.usaToBrHora($ass->dt_assentamento).' - '.$ass->nome_completo.'</span><br/>';
						$tabela .= $ass->assentamento.'<br/><br/>';
					}
				}else{
					$tabela .= 'Nenhum registro foi encontrado';
				}
				// get current vertical position
				$y = $pdf->getY();

				// write the first column
				$pdf->writeHTMLCell(0, '', '', $y, $tabela, 0, 0, 1, true, 'J', true);
				
			//}
				

				// reset pointer to the last page
				$pdf->lastPage();
				
				$pdf->Output('Relatorio.pdf', 'I');
			// }else{
				// $pdf->Write(0, 'Nenhum registro foi encontrado', '', 0, 'C', true, 0, false, false, 0);
				// $pdf->Output('Relatorio.pdf', 'I');
			
			
			// }
			
			

		}
	}
	public function graficos(){
		$session_data = $this->session->userdata('disproju');
		$data["session_data"] = $session_data;
		
		$p1 = new Processo();
		$dados1 = $p1->consultaProcessosGraficoAntigos();
		$data["graf2"] = json_encode($dados1);
		
		$p2 = new Processo();
		
		$dados2 = $p2->consultaProcessosGraficoUsuariosAntigos('1');
		$data["adm"] = json_encode($dados2);
		//echo json_encode($dados2);
		
		$dados3 = $p2->consultaProcessosGraficoUsuariosAntigos('2');
		$data["jud"] = json_encode($dados3);
		//echo json_encode($dados3);
		$dados2 = $p2->consultaProcessosGraficoUsuariosAntigos('3');
		$data["exec"] = json_encode($dados2);
		//echo json_encode($dados2);
		$dados2 = $p2->consultaProcessosGraficoUsuariosAntigos('999');
		$data["usuario"] = json_encode($dados2);
		//echo json_encode($dados2);
		
		//-------------------------------------------------------------------------
		$p3 = new Processo();
		
		$aa = $p3->consultaProcessosGraficoUsuariosRedistAntigos('1');
		$data["admred"] = json_encode($aa);
		//echo json_encode($dados2);
		
		$bb = $p3->consultaProcessosGraficoUsuariosRedistAntigos('2');
		$data["judred"] = json_encode($bb);
		//echo json_encode($dados3);
		$cc = $p3->consultaProcessosGraficoUsuariosRedistAntigos('3');
		$data["execred"] = json_encode($cc);
		//echo json_encode($dados2);
		$dd = $p3->consultaProcessosGraficoUsuariosRedistAntigos('999');
		$data["usuariored"] = json_encode($dd);
		//echo json_encode($dados2);
		
		
		//-------------------------------------------------------------------------
		$p3 = new Processo();
		$aux = new Processo();

		$teste = array(
			'1'=>0,
			'2'=>0,
			'3'=>0,
			'4'=>0,
			'5'=>0,
			'6'=>0,
			'7'=>0,
			'8'=>0,
			'9'=>0,
			'10'=>0,
			'11'=>0,
			'12'=>0
		);
		//-----------------------------------------------------
		$aux = $p3->graficoMes('1');
		foreach($aux as $p){
			$teste[$p->mes] = $p->total;
		}
		$s = implode(',',$teste);
		$data["mesadm"] =  '['.$s.']';
		$teste = array(
			'1'=>0,
			'2'=>0,
			'3'=>0,
			'4'=>0,
			'5'=>0,
			'6'=>0,
			'7'=>0,
			'8'=>0,
			'9'=>0,
			'10'=>0,
			'11'=>0,
			'12'=>0
		);
		//-----------------------------------------------------
		$aux = $p3->graficoMes('2');
		foreach($aux as $p){
			$teste[$p->mes] = $p->total;
		}
		$s = implode(',',$teste);
		$data["mesjud"] =  '['.$s.']';
		//-----------------------------------------------------
		$teste = array(
			'1'=>0,
			'2'=>0,
			'3'=>0,
			'4'=>0,
			'5'=>0,
			'6'=>0,
			'7'=>0,
			'8'=>0,
			'9'=>0,
			'10'=>0,
			'11'=>0,
			'12'=>0
		);
		$aux = $p3->graficoMes('3');
		foreach($aux as $p){
			$teste[$p->mes] = $p->total;
		}
		$s = implode(',',$teste);
		$data["mesexec"] =  '['.$s.']';
		//-----------------------------------------------------
		
		$this->load->view('header');
		$this->load->view('v_graficos',$data);

	}
	public function joao(){
	
		$pro = new Processo();
		$pro = $pro->joao();
		foreach($pro as $p){
			$processo = $p->id;
			$usuario = $p->usuario_id;
			$p->usuario_id_redist = null;
			if($p->save()){
				$p2 = new Processo_Usuario();
                                        
				$p2->processo_id = $processo;
				$p2->tipoevento_id = 8;
				$p2->usuario_id = $usuario;
				$p2->local_id = 2;
				$p2->status = 'ASR';
				$p2->observacao = 'RETORNO AUSÊNCIA';
				$p2->save();
			
			}
	
		}
	}

}

/* End of file welcome.php */
/* Location: ./application/controllers/welcome.php */
